Контролировать скорость (и шум!) вашего кулера легко!

**Важно:** Вы можете повредить ваше оборудование. Вентилятор на процессоре необходим для его охлаждения, а в процессе выполнения этого howto он будет выключен на пару секунд. Если вам не хочется этого делать - не делайте!

## Contents

*   [1 lm-sensors](#lm-sensors)
*   [2 pwmconfig](#pwmconfig)
    *   [2.1 Тонкая настройка](#.D0.A2.D0.BE.D0.BD.D0.BA.D0.B0.D1.8F_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0)
*   [3 fancontrol](#fancontrol)

### lm-sensors

Первым делом, вам необходимо установить и настроить **lm-sensors**. Подробнее об этом вы можете узнать из соответствующей [статьи](/index.php/Lm_sensors_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Lm sensors (Русский)").

После того как вы установите [lm_sensors](https://www.archlinux.org/packages/?name=lm_sensors), изучите вывод программы `sensors`.

```
$ sensors
w83627hf-isa-0290
Adapter: ISA adapter
VCore 1:   +1.14 V  (min =  +0.00 V, max =  +4.08 V)              
VCore 2:   +2.67 V  (min =  +0.00 V, max =  +4.08 V)              
+3.3V:     +3.39 V  (min =  +2.82 V, max =  +3.79 V)              
+5V:       +5.19 V  (min =  +3.47 V, max =  +0.40 V)       ALARM  
+12V:     +12.40 V  (min = +12.95 V, max =  +7.96 V)       ALARM  
-12V:      -7.01 V  (min =  +1.78 V, max = -10.63 V)       ALARM  
-5V:       -3.84 V  (min =  -7.66 V, max =  +2.29 V)              
V5SB:      +5.75 V  (min =  +0.08 V, max =  +0.54 V)       ALARM  
VBat:      +3.10 V  (min =  +0.54 V, max =  +0.13 V)       ALARM  
fan1:     2428 RPM  (min =    0 RPM, div = 4)                     
fan2:        0 RPM  (min = 1630 RPM, div = 4)              ALARM  
fan3:     2191 RPM  (min = 6367 RPM, div = 4)              ALARM  
temp1:       +38°C  (high =   +20°C, hyst =   +68°C)   sensor = thermistor           
temp2:     +39.5°C  (high =   +65°C, hyst =   +60°C)   sensor = diode           
temp3:     +38.0°C  (high =   +65°C, hyst =   +60°C)   sensor = thermistor           (beep)
vid:      +0.000 V  (VRM Version 2.4)
alarms:   
beep_enable:
          Sound alarm enabled''

```

Если в вашем выводе sensors отсутствует RPM (обороты в минуту) для процессорного кулера (CPU fan) и вы уверены что он работает, вам необходимо увеличить делитель кулера (fan divisor). Если скорость вашего кулера отображается и она больше нуля, пропустите следующий шаг.

**Увеличение fan_div:**

Первая строка в выводе sensors - это имя чипсета вашей материнской платы, которое используется для чтения скоростей/темпов/напряжений. Сначала сделаем резервную копию:

```
# cp /etc/sensors.conf /etc/sensors.conf_original

```

Отредактируйте файл `/etc/sensors.conf`

```
# nano /etc/sensors.conf

```

Найдите ваш чипсет. Их названия очень похожи друг на друга, так что убедитесь что вы редактируете правильный. Добавьте строку fanX_div 4 в начале конфигурации вашего чипсета. Замените X на количество ваших процессорных кулеров, у меня это 2\. Вы должны сами найти это число для своего компьютера, но скорее всего это 1, 2 или 3.

Сохраните и выполните:

```
# sensors -s

```

это загрузит новые значения переменных из sensors.conf. Запустите sensors снова и проверьте RPM теперь. Если его нет, то увеличте делитель до 8, 16 или 32.

Можете не опасаясь игнорировать всё, кроме fanX_div. Я бы посоветовал вам оставить все остальные значения по умолчанию.

### pwmconfig

После того как lm-sensors правильно сконфигурированы запустите pwmconfig и настройте скорость работы ваших вентиляторов:

```
pwmconfig

```

Следуйте инструкциям в pwmconfig для установки базовых скоростей.

Опции конфигурации по умолчанию должны создать новый файл, `/etc/fancontrol`.

Для настройки всех скоростей следуйте инструкциям в pwmconfig.

#### Тонкая настройка

**Важно:** Некоторые из приведённых ниже шагов описывают тонкую настройку кулеров. Прежде чем что-то выполнять убедитесь что ваш процессор не очень сильно нагружен и у вас есть пространство для маневров. Если в какой-то момент настройки вы заметите что температура процессора катастрофически растёт выполните `echo "255" > /sys/class/hwmon/hwmon0/device/pwm1` чтобы раскрутить кулер как можно сильнее пока ситуация не нормализуется и процессор не охладится. Вообще, вы должны знать что вы делаете, прежде чем вы допустите глупость в конфигурационном файле.

Если вы хотите больше контроля, вам возможно надо редактировать сгенерированный файл конфигурации чтобы добиться желаемого результата. Вот пример конфигурационного файла:

```
INTERVAL=10
FCTEMPS=hwmon0/device/pwm1=hwmon0/device/temp1_input
FCFANS= hwmon0/device/pwm1=hwmon0/device/fan1_input
MINTEMP=hwmon0/device/pwm1=20
MAXTEMP=hwmon0/device/pwm1=55
MINSTART=hwmon0/device/pwm1=150
MINSTOP=hwmon0/device/pwm1=105

```

*   **INTERVAL**: как часто демон должен опрашивать датчики температуры процессора и корректировать скорость вращения кулера. Интервал задаётся в секундах.

Оставшаяся часть конфигурационного файла разделена на (как минимум) два значения на каждую опцию конфигурации. Каждая опция сначала указывает на PWM-устройство в которое будет производиться запись при смене скорости кулера. Второе "поле" — это непосредственно значение, которое надо записать. Это позволяет вам наблюдать и контролировать несколько вентиляторов и датчиков температуры (если ваш компьютер это поддерживает).

*   **FCTEMPS**: устройство ввода температуры процессора. Предыдущий пример указывает на `/sys/class/hwmon/hwmon0/device/temp1_input`.

*   **FCFANS**: устройство ввода текущей скорости кулера. Пример: `/sys/class/hwmon/hwmon0/device/fan1_input`

*   **MINTEMP**: температура (°C) при которой нужно *ВЫКЛЮЧАТЬ* кулер на процессоре. Эффективные процессоры не нуждаются в охлаждении во время простоя. Устанавливая этот параметр, вы должны быть *уверены* в том, что эта температура безопасна. Установка этого параметра в 0 не рекомендуется, используйте более корректное (для данного оборудования) значение.

*   **MAXTEMP**: температура (°C) при которой кулер надо включать на *МАКСИМАЛЬНУЮ* скорость. Этот параметр надо выставлять задавать примерно на 10-20 °C ниже *критической температуры*/*температуры выключения* для вашего процессора. Установка этого параметра ближе к MINTEMP приведёт к повышению средней скорости вращения кулера.

*   **MINSTOP**: значение PWM при котором останавливается кулер. Все кулеры немного отличаются друг от друга. Вы можете записывать при помощи `echo` различные значения (от 0 до 255) в `/sys/class/hwmon/hwmon0/device/pwm1` и наблюдать за кулером. Когда какое-то значение приведёт к его остановке, используйте это значение.

*   **MINSTART**: значение PWM при котором кулер запускается вновь. Зачастую это значение превышающее MINSTOP, т.к. большее напряжение необходимо кулеру для преодоления инерции.

### fancontrol

Попробуйте запустить fancontrol:

```
/usr/bin/fancontrol

```

После запуска этой программы вы возможно услышите как ваш кулер замедляется. Если это работает, то можно добавить "fancontrol" в автозапуск

```
 systemctl enable fancontrol

```

либо к массиву DAEMONS в `/etc/[rc.conf](/index.php/Rc.conf "Rc.conf")` если вы используете init, чтобы это происходило при старте системы.

*Большая часть материала для этого howto взята с [Ubuntu forums](http://ubuntuforums.org/) и [Ubuntu guide](http://ubuntuguide.org/).*